

<!DOCTYPE html>
<html lang="zh-CN" data-default-color-scheme=auto>



<head>
  <meta charset="UTF-8">
  <link rel="apple-touch-icon" sizes="76x76" href="/img/Mine.jpg">
  <link rel="icon" href="/img/Mine.jpg">
  <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=5.0, shrink-to-fit=no">
  <meta http-equiv="x-ua-compatible" content="ie=edge">
  
  <meta name="theme-color" content="#2f4154">
  <meta name="author" content="Chiam">
  <meta name="keywords" content="算法，安全">
  
    <meta name="description" content="『算法-ACM 竞赛』算法交流与技术扯皮（免费算法跟练班开始了，在 CSDN 更新技术文章）博主为了大家的算法学习，免费给大家进行算法培训课程，课程的文章将会在 CSDN 更新。直播时间：2023 年 1 月 18 日至 2023 年 2 月 1 日，可以根据课程需求进行延长。我的直播间：https:&#x2F;&#x2F;live.bilibili.com&#x2F;24375297 作者：风骨散人 Chiam蓝桥云课的蓝桥">
<meta property="og:type" content="article">
<meta property="og:title" content="『算法-ACM竞赛』算法交流与技术扯皮（免费算法跟练班开始了，在CSDN更新技术文章）">
<meta property="og:url" content="http://example.com/2023/12/06/%E3%80%8E%E7%AE%97%E6%B3%95-ACM%E7%AB%9E%E8%B5%9B%E3%80%8F%E7%AE%97%E6%B3%95%E4%BA%A4%E6%B5%81%E4%B8%8E%E6%8A%80%E6%9C%AF%E6%89%AF%E7%9A%AE%EF%BC%88%E5%85%8D%E8%B4%B9%E7%AE%97%E6%B3%95%E8%B7%9F%E7%BB%83%E7%8F%AD%E5%BC%80%E5%A7%8B%E4%BA%86%EF%BC%8C%E5%9C%A8CSDN%E6%9B%B4%E6%96%B0%E6%8A%80%E6%9C%AF%E6%96%87%E7%AB%A0%EF%BC%89/index.html">
<meta property="og:site_name" content="Chiam 的个人主页">
<meta property="og:description" content="『算法-ACM 竞赛』算法交流与技术扯皮（免费算法跟练班开始了，在 CSDN 更新技术文章）博主为了大家的算法学习，免费给大家进行算法培训课程，课程的文章将会在 CSDN 更新。直播时间：2023 年 1 月 18 日至 2023 年 2 月 1 日，可以根据课程需求进行延长。我的直播间：https:&#x2F;&#x2F;live.bilibili.com&#x2F;24375297 作者：风骨散人 Chiam蓝桥云课的蓝桥">
<meta property="og:locale" content="zh_CN">
<meta property="article:published_time" content="2023-12-05T16:11:44.051Z">
<meta property="article:modified_time" content="2023-12-05T16:20:06.730Z">
<meta property="article:author" content="Chiam">
<meta property="article:tag" content="算法，安全">
<meta name="twitter:card" content="summary_large_image">
  
  
  
  <title>『算法-ACM竞赛』算法交流与技术扯皮（免费算法跟练班开始了，在CSDN更新技术文章） - Chiam 的个人主页</title>

  <link  rel="stylesheet" href="https://lib.baomitu.com/twitter-bootstrap/4.6.1/css/bootstrap.min.css" />



  <link  rel="stylesheet" href="https://lib.baomitu.com/github-markdown-css/4.0.0/github-markdown.min.css" />

  <link  rel="stylesheet" href="https://lib.baomitu.com/hint.css/2.7.0/hint.min.css" />

  <link  rel="stylesheet" href="https://lib.baomitu.com/fancybox/3.5.7/jquery.fancybox.min.css" />



<!-- 主题依赖的图标库，不要自行修改 -->
<!-- Do not modify the link that theme dependent icons -->

<link rel="stylesheet" href="//at.alicdn.com/t/font_1749284_hj8rtnfg7um.css">



<link rel="stylesheet" href="//at.alicdn.com/t/font_1736178_lbnruvf0jn.css">


<link  rel="stylesheet" href="/css/main.css" />


  <link id="highlight-css" rel="stylesheet" href="/css/highlight.css" />
  
    <link id="highlight-css-dark" rel="stylesheet" href="/css/highlight-dark.css" />
  



  
<link rel="stylesheet" href="/css/custom.css">



  <script id="fluid-configs">
    var Fluid = window.Fluid || {};
    Fluid.ctx = Object.assign({}, Fluid.ctx)
    var CONFIG = {"hostname":"example.com","root":"/","version":"1.9.5-a","typing":{"enable":true,"typeSpeed":70,"cursorChar":"_","loop":false,"scope":[]},"anchorjs":{"enable":true,"element":"h1,h2,h3,h4,h5,h6","placement":"left","visible":"hover","icon":"❡"},"progressbar":{"enable":true,"height_px":3,"color":"#29d","options":{"showSpinner":false,"trickleSpeed":100}},"code_language":{"enable":true,"default":"TEXT"},"copy_btn":true,"image_caption":{"enable":true},"image_zoom":{"enable":true,"img_url_replace":["",""]},"toc":{"enable":true,"placement":"right","headingSelector":"h1,h2,h3,h4,h5,h6","collapseDepth":2},"lazyload":{"enable":true,"loading_img":"/img/loading.gif","onlypost":false,"offset_factor":2},"web_analytics":{"enable":false,"follow_dnt":true,"baidu":null,"google":{"measurement_id":null},"tencent":{"sid":null,"cid":null},"woyaola":null,"cnzz":null,"leancloud":{"app_id":null,"app_key":null,"server_url":null,"path":"window.location.pathname","ignore_local":false}},"search_path":"/local-search.xml","include_content_in_search":true};

    if (CONFIG.web_analytics.follow_dnt) {
      var dntVal = navigator.doNotTrack || window.doNotTrack || navigator.msDoNotTrack;
      Fluid.ctx.dnt = dntVal && (dntVal.startsWith('1') || dntVal.startsWith('yes') || dntVal.startsWith('on'));
    }
  </script>
  <script  src="/js/utils.js" ></script>
  <script  src="/js/color-schema.js" ></script>
  


  
<meta name="generator" content="Hexo 6.3.0"></head>


<body>
  

  <header>
    

<div class="header-inner" style="height: 70vh;">
  <nav id="navbar" class="navbar fixed-top  navbar-expand-lg navbar-dark scrolling-navbar">
  <div class="container">
    <a class="navbar-brand" href="/">
      <strong>Chiam&#39;s Blogs</strong>
    </a>

    <button id="navbar-toggler-btn" class="navbar-toggler" type="button" data-toggle="collapse"
            data-target="#navbarSupportedContent"
            aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
      <div class="animated-icon"><span></span><span></span><span></span></div>
    </button>

    <!-- Collapsible content -->
    <div class="collapse navbar-collapse" id="navbarSupportedContent">
      <ul class="navbar-nav ml-auto text-center">
        
          
          
          
          
            <li class="nav-item">
              <a class="nav-link" href="/">
                
                <span>首页</span>
              </a>
            </li>
          
        
          
          
          
          
            <li class="nav-item">
              <a class="nav-link" href="/archives/">
                
                <span>归档</span>
              </a>
            </li>
          
        
          
          
          
          
            <li class="nav-item">
              <a class="nav-link" href="/categories/">
                
                <span>分类</span>
              </a>
            </li>
          
        
          
          
          
          
            <li class="nav-item">
              <a class="nav-link" href="/about/">
                
                <span>关于</span>
              </a>
            </li>
          
        
          
          
          
          
            <li class="nav-item">
              <a class="nav-link" href="/links/">
                
                <span>友链</span>
              </a>
            </li>
          
        
        
          <li class="nav-item" id="search-btn">
            <a class="nav-link" target="_self" href="javascript:;" data-toggle="modal" data-target="#modalSearch" aria-label="Search">
              <i class="iconfont icon-search"></i>
            </a>
          </li>
          
        
        
          <li class="nav-item" id="color-toggle-btn">
            <a class="nav-link" target="_self" href="javascript:;" aria-label="Color Toggle">
              <i class="iconfont icon-dark" id="color-toggle-icon"></i>
            </a>
          </li>
        
      </ul>
    </div>
  </div>
</nav>

  

<div id="banner" class="banner" parallax=true
     style="background: url('/img/default.png') no-repeat center center; background-size: cover;">
  <div class="full-bg-img">
    <div class="mask flex-center" style="background-color: rgba(0, 0, 0, 0.3)">
      <div class="banner-text text-center fade-in-up">
        <div class="h2">
          
            <span id="subtitle" data-typed-text="『算法-ACM竞赛』算法交流与技术扯皮（免费算法跟练班开始了，在CSDN更新技术文章）"></span>
          
        </div>

        
          
  <div class="mt-3">
    
    
      <span class="post-meta">
        <i class="iconfont icon-date-fill" aria-hidden="true"></i>
        <time datetime="2023-12-06 00:11" pubdate>
          2023年12月6日 凌晨
        </time>
      </span>
    
  </div>

  <div class="mt-1">
    
      <span class="post-meta mr-2">
        <i class="iconfont icon-chart"></i>
        
          1.2k 字
        
      </span>
    

    
      <span class="post-meta mr-2">
        <i class="iconfont icon-clock-fill"></i>
        
        
        
          11 分钟
        
      </span>
    

    
    
  </div>


        
      </div>

      
    </div>
  </div>
</div>

</div>

  </header>

  <main>
    
      

<div class="container-fluid nopadding-x">
  <div class="row nomargin-x">
    <div class="side-col d-none d-lg-block col-lg-2">
      

    </div>

    <div class="col-lg-8 nopadding-x-md">
      <div class="container nopadding-x-md" id="board-ctn">
        <div id="board">
          <article class="post-content mx-auto">
            <h1 id="seo-header">『算法-ACM竞赛』算法交流与技术扯皮（免费算法跟练班开始了，在CSDN更新技术文章）</h1>
            
            
              <div class="markdown-body">
                
                <h1 id="『算法-ACM-竞赛』算法交流与技术扯皮（免费算法跟练班开始了，在-CSDN-更新技术文章）"><a href="#『算法-ACM-竞赛』算法交流与技术扯皮（免费算法跟练班开始了，在-CSDN-更新技术文章）" class="headerlink" title="『算法-ACM 竞赛』算法交流与技术扯皮（免费算法跟练班开始了，在 CSDN 更新技术文章）"></a>『算法-ACM 竞赛』算法交流与技术扯皮（免费算法跟练班开始了，在 CSDN 更新技术文章）</h1><p>博主为了大家的算法学习，免费给大家进行算法培训课程，课程的文章将会在 CSDN 更新。<br>直播时间：2023 年 1 月 18 日至 2023 年 2 月 1 日，可以根据课程需求进行延长。<br>我的直播间：<a target="_blank" rel="noopener" href="https://live.bilibili.com/24375297">https://live.bilibili.com/24375297</a></p>
<h1 id="作者：风骨散人-Chiam"><a href="#作者：风骨散人-Chiam" class="headerlink" title="作者：风骨散人 Chiam"></a>作者：风骨散人 Chiam</h1><p>蓝桥云课的蓝桥杯竞赛辅导作者</p>
<p>现就读与中国科学院大学信息工程研究所</p>
<h1 id="要求："><a href="#要求：" class="headerlink" title="要求："></a>要求：</h1><p>跟练班不收费，也不需要任何支出，只需要你有一颗热爱算法的心，需要有坚定的毅力和成为大牛的决心。</p>
<p>名额有限，速速进群。</p>
<h1 id="练习方式："><a href="#练习方式：" class="headerlink" title="练习方式："></a>练习方式：</h1><p>笔者给大家组织联系题目，练习系统 Vitrual Judge，会有题解和讲解。</p>
<p>直播会在 CSDN 和 Bilibili 进行。</p>
<p>进群的话，不能进群的话。可以加我。</p>
<p>所有的联系方式都在主页呀。</p>
<h1 id="涵盖知识点"><a href="#涵盖知识点" class="headerlink" title="涵盖知识点"></a>涵盖知识点</h1><p>​</p>
<pre><code class="hljs">写在前面：

因为博主的技术有限，算法也是很难得一门科学，我只能给出尽量全的分类，然后尽可能的讲解。

但是有些算法超出了本人的能力范畴，说实在的就是我太菜了。所以大家就当本文是目录吧。

 尽可能的会给大家多讲解一点算法知识。
</code></pre>
<p>1.基础算法</p>
<pre><code class="hljs"> 递归
 递推
分治
贪心
二分
回溯搜索
</code></pre>
<p>2.动态规划</p>
<pre><code class="hljs">背包
线性DP
区间DP
数位DP
状态压缩DP
树形DP
概率/期望DP
插头DP
</code></pre>
<p>图论</p>
<pre><code class="hljs">BFS DFS
最短路
第K短路
最小生成树（森林）
次小生成树
曼哈顿最小生成树
最短路径生成树
欧拉路径
拓扑排序
最小树形图
 生成树计数
树的重心
DAG的深度优先搜索标记
图的割点、桥和双连通分支的基本概念
LCA
无向图找桥
无向图连通度（割）
最大团问题
一般图匹配带花树
有向图的强连通分量
Tarjan强连通分量
弦图判断
弦图的Perfect Elimination点排列
稳定婚姻问题
双连通分支
无向图连通分支
有向图强连通分支
有向图最小点基
Floyd求最小环
2-SAT
</code></pre>
<p>数据结构：</p>
<pre><code class="hljs">Splay树
划分树
左偏树
线段树
树链剖分
动态树
主席树
Trie树
RMQ
二分查找
树状数组
滚动数组
逆序数
带权值的并查集
Chtholly Tree (珂朵莉树) ODT
SBT算法
AVL树
替罪羊树
</code></pre>
<p>数学：<br>一、组合数学:</p>
<pre><code class="hljs"> Polya定理、burnside定理
 置换，置换的运算
 排列组合，区间计数，计数序列
 鸽笼原理、容斥原理
 递推关系
母函数
莫比乌斯反演
偏序关系理论
</code></pre>
<p>二、数论.</p>
<pre><code class="hljs">素数与整除问题
进制位.
同余模运算.
欧拉函数
</code></pre>
<p>三、计算方法</p>
<pre><code class="hljs"> 二分法求解单调函数相关知识.
 三分法求解单峰(单谷)的极值.
 0/1分数规划.
 矩阵法
 随机化算法
 迭代逼近
</code></pre>
<p>四、计算几何</p>
<pre><code class="hljs">叉积和点积的运用(如线段相交的判定,点到线段的距离等).
多边型的简单算法(求面积)和相关判定(点在多边型内,多边型是否相交)
二维、三维凸包
扫描线算法(例如求矩形的面积和周长并,常和线段树或堆一起使用).
半平面求交
点集最小圆覆盖.
对踵点（最远点对）
</code></pre>
<p>五、博弈论</p>
<pre><code class="hljs">巴什博奕（BashGame）
威佐夫博奕（WythoffGame）
尼姆博奕（NimmGame）
组合博弈
</code></pre>
<p>六、其他数学</p>
<pre><code class="hljs">高斯消元法
 概率问题.
GCD、扩展的欧几里德(中国剩余定理)
高次同余方程
矩阵变换
</code></pre>
<p>​</p>

                
              </div>
            
            <hr/>
            <div>
              <div class="post-metas my-3">
  
    <div class="post-meta mr-3 d-flex align-items-center">
      <i class="iconfont icon-category"></i>
      

<span class="category-chains">
  
  
    
      <span class="category-chain">
        
  <a href="/categories/%E7%AE%97%E6%B3%95/" class="category-chain-item">算法</a>
  
  
    <span>></span>
    
  <a href="/categories/%E7%AE%97%E6%B3%95/ACM%E7%AB%9E%E8%B5%9B/" class="category-chain-item">ACM竞赛</a>
  
  

  

      </span>
    
  
</span>

    </div>
  
  
</div>


              
  

  <div class="license-box my-3">
    <div class="license-title">
      <div>『算法-ACM竞赛』算法交流与技术扯皮（免费算法跟练班开始了，在CSDN更新技术文章）</div>
      <div>http://example.com/2023/12/06/『算法-ACM竞赛』算法交流与技术扯皮（免费算法跟练班开始了，在CSDN更新技术文章）/</div>
    </div>
    <div class="license-meta">
      
        <div class="license-meta-item">
          <div>作者</div>
          <div>Chiam</div>
        </div>
      
      
        <div class="license-meta-item license-meta-date">
          <div>发布于</div>
          <div>2023年12月6日</div>
        </div>
      
      
      
        <div class="license-meta-item">
          <div>许可协议</div>
          <div>
            
              
              
                <a class="print-no-link" target="_blank" href="https://creativecommons.org/licenses/by/4.0/">
                  <span class="hint--top hint--rounded" aria-label="BY - 署名">
                    <i class="iconfont icon-by"></i>
                  </span>
                </a>
              
            
          </div>
        </div>
      
    </div>
    <div class="license-icon iconfont"></div>
  </div>



              
                <div class="post-prevnext my-3">
                  <article class="post-prev col-6">
                    
                    
                      <a href="/2023/12/06/%E3%80%8E%E7%AE%97%E6%B3%95-ACM%E7%AB%9E%E8%B5%9B%E3%80%8F%E7%AE%97%E6%B3%95%E5%88%86%E6%9E%90%E4%B8%8E%E8%AE%BE%E8%AE%A1%E5%85%A5%E9%97%A8%E7%BA%A7-%E9%80%92%E6%8E%A8%E7%AE%97%E6%B3%95%EF%BC%88%E8%BF%99%E4%B8%AA%E8%A6%81%E6%98%AF%E5%AD%A6%E4%B8%8D%E4%BC%9A%EF%BC%8C%E5%B0%B1%E5%88%AB%E5%AD%A6%E7%AE%97%E6%B3%95%E4%BA%86%EF%BC%89/" title="『算法-ACM竞赛』算法分析与设计入门级-递推算法（这个要是学不会，就别学算法了）">
                        <i class="iconfont icon-arrowleft"></i>
                        <span class="hidden-mobile">『算法-ACM竞赛』算法分析与设计入门级-递推算法（这个要是学不会，就别学算法了）</span>
                        <span class="visible-mobile">上一篇</span>
                      </a>
                    
                  </article>
                  <article class="post-next col-6">
                    
                    
                      <a href="/2023/12/06/%E3%80%8E%E7%AE%97%E6%B3%95-ACM%E7%AB%9E%E8%B5%9B%E3%80%8F%E7%9F%A9%E9%98%B5%E5%BF%AB%E9%80%9F%E5%B9%82--HDU%206030%20Happy%20Necklace/" title="『算法-ACM竞赛』矩阵快速幂--HDU 6030 Happy Necklace">
                        <span class="hidden-mobile">『算法-ACM竞赛』矩阵快速幂--HDU 6030 Happy Necklace</span>
                        <span class="visible-mobile">下一篇</span>
                        <i class="iconfont icon-arrowright"></i>
                      </a>
                    
                  </article>
                </div>
              
            </div>

            
  
  
    <article id="comments" lazyload>
      
  <div id="valine"></div>
  <script type="text/javascript">
    Fluid.utils.loadComments('#valine', function() {
      Fluid.utils.createScript('https://lib.baomitu.com/valine/1.5.1/Valine.min.js', function() {
        var options = Object.assign(
          {"appId":"fIfc7WqUDZohlQuPc2lz5mJy-MdYXbMMI","appKey":"zjlAG3ZA3o4cBHVAkjzc2Z20","path":"window.location.pathname","placeholder":"留言仅限讨论，禁止广告等行为","avatar":"retro","meta":["nick","mail","link"],"requiredFields":[],"pageSize":10,"lang":"zh-CN","highlight":false,"recordIP":false,"serverURLs":"https://fifc7wqu.api.lncldglobal.com","emojiCDN":null,"emojiMaps":null,"enableQQ":false},
          {
            el: "#valine",
            path: window.location.pathname
          }
        )
        new Valine(options);
        Fluid.utils.waitElementVisible('#valine .vcontent', () => {
          var imgSelector = '#valine .vcontent img:not(.vemoji)';
          Fluid.plugins.imageCaption(imgSelector);
          Fluid.plugins.fancyBox(imgSelector);
        })
      });
    });
  </script>
  <noscript>Please enable JavaScript to view the comments</noscript>


    </article>
  


          </article>
        </div>
      </div>
    </div>

    <div class="side-col d-none d-lg-block col-lg-2">
      
  <aside class="sidebar" style="margin-left: -1rem">
    <div id="toc">
  <p class="toc-header">
    <i class="iconfont icon-list"></i>
    <span>目录</span>
  </p>
  <div class="toc-body" id="toc-body"></div>
</div>



  </aside>


    </div>
  </div>
</div>





  



  



  



  



  







    

    
      <a id="scroll-top-button" aria-label="TOP" href="#" role="button">
        <i class="iconfont icon-arrowup" aria-hidden="true"></i>
      </a>
    

    
      <div class="modal fade" id="modalSearch" tabindex="-1" role="dialog" aria-labelledby="ModalLabel"
     aria-hidden="true">
  <div class="modal-dialog modal-dialog-scrollable modal-lg" role="document">
    <div class="modal-content">
      <div class="modal-header text-center">
        <h4 class="modal-title w-100 font-weight-bold">搜索</h4>
        <button type="button" id="local-search-close" class="close" data-dismiss="modal" aria-label="Close">
          <span aria-hidden="true">&times;</span>
        </button>
      </div>
      <div class="modal-body mx-3">
        <div class="md-form mb-5">
          <input type="text" id="local-search-input" class="form-control validate">
          <label data-error="x" data-success="v" for="local-search-input">关键词</label>
        </div>
        <div class="list-group" id="local-search-result"></div>
      </div>
    </div>
  </div>
</div>

    

    
  </main>

  <footer>
    <div class="footer-inner">
  
    <div class="footer-content">
       <meta name="referrer" content="no-referrer" /> <footer id="footer" role="contentinfo"> <div class="divider"> <div class="wall"></div> <img class="animals" src="/img/footer_animals_new.png" srcset="/img/loading.gif" lazyload alt="Footer Animals"> </div> <div class="container" data-index="450"> <p> <a href="https://chiamzhang.github.io" target="_blank">DogEgg</a> <i class="iconfont icon-love"></i> <a href="#" target="_blank">LittePig</a> </p> <p> Powered by  <a href="https://hexo.io" target="_blank" rel="nofollow noopener"><span>Hexo</span></a> <i class="iconfont icon-pen"></i> Theme  <a href="https://github.com/fluid-dev/hexo-theme-fluid" target="_blank" rel="nofollow noopener"><span>Fluid</span></a> </p> </div> </footer> 
    </div>
  
  
  
  
</div>

  </footer>

  <!-- Scripts -->
  
  <script  src="https://lib.baomitu.com/nprogress/0.2.0/nprogress.min.js" ></script>
  <link  rel="stylesheet" href="https://lib.baomitu.com/nprogress/0.2.0/nprogress.min.css" />

  <script>
    NProgress.configure({"showSpinner":false,"trickleSpeed":100})
    NProgress.start()
    window.addEventListener('load', function() {
      NProgress.done();
    })
  </script>


<script  src="https://lib.baomitu.com/jquery/3.6.4/jquery.min.js" ></script>
<script  src="https://lib.baomitu.com/twitter-bootstrap/4.6.1/js/bootstrap.min.js" ></script>
<script  src="/js/events.js" ></script>
<script  src="/js/plugins.js" ></script>


  <script  src="https://lib.baomitu.com/typed.js/2.0.12/typed.min.js" ></script>
  <script>
    (function (window, document) {
      var typing = Fluid.plugins.typing;
      var subtitle = document.getElementById('subtitle');
      if (!subtitle || !typing) {
        return;
      }
      var text = subtitle.getAttribute('data-typed-text');
      
        typing(text);
      
    })(window, document);
  </script>




  
    <script  src="/js/img-lazyload.js" ></script>
  




  
<script>
  Fluid.utils.createScript('https://lib.baomitu.com/tocbot/4.20.1/tocbot.min.js', function() {
    var toc = jQuery('#toc');
    if (toc.length === 0 || !window.tocbot) { return; }
    var boardCtn = jQuery('#board-ctn');
    var boardTop = boardCtn.offset().top;

    window.tocbot.init(Object.assign({
      tocSelector     : '#toc-body',
      contentSelector : '.markdown-body',
      linkClass       : 'tocbot-link',
      activeLinkClass : 'tocbot-active-link',
      listClass       : 'tocbot-list',
      isCollapsedClass: 'tocbot-is-collapsed',
      collapsibleClass: 'tocbot-is-collapsible',
      scrollSmooth    : true,
      includeTitleTags: true,
      headingsOffset  : -boardTop,
    }, CONFIG.toc));
    if (toc.find('.toc-list-item').length > 0) {
      toc.css('visibility', 'visible');
    }

    Fluid.events.registerRefreshCallback(function() {
      if ('tocbot' in window) {
        tocbot.refresh();
        var toc = jQuery('#toc');
        if (toc.length === 0 || !tocbot) {
          return;
        }
        if (toc.find('.toc-list-item').length > 0) {
          toc.css('visibility', 'visible');
        }
      }
    });
  });
</script>


  <script src=https://lib.baomitu.com/clipboard.js/2.0.11/clipboard.min.js></script>

  <script>Fluid.plugins.codeWidget();</script>


  
<script>
  Fluid.utils.createScript('https://lib.baomitu.com/anchor-js/4.3.1/anchor.min.js', function() {
    window.anchors.options = {
      placement: CONFIG.anchorjs.placement,
      visible  : CONFIG.anchorjs.visible
    };
    if (CONFIG.anchorjs.icon) {
      window.anchors.options.icon = CONFIG.anchorjs.icon;
    }
    var el = (CONFIG.anchorjs.element || 'h1,h2,h3,h4,h5,h6').split(',');
    var res = [];
    for (var item of el) {
      res.push('.markdown-body > ' + item.trim());
    }
    if (CONFIG.anchorjs.placement === 'left') {
      window.anchors.options.class = 'anchorjs-link-left';
    }
    window.anchors.add(res.join(', '));

    Fluid.events.registerRefreshCallback(function() {
      if ('anchors' in window) {
        anchors.removeAll();
        var el = (CONFIG.anchorjs.element || 'h1,h2,h3,h4,h5,h6').split(',');
        var res = [];
        for (var item of el) {
          res.push('.markdown-body > ' + item.trim());
        }
        if (CONFIG.anchorjs.placement === 'left') {
          anchors.options.class = 'anchorjs-link-left';
        }
        anchors.add(res.join(', '));
      }
    });
  });
</script>


  
<script>
  Fluid.utils.createScript('https://lib.baomitu.com/fancybox/3.5.7/jquery.fancybox.min.js', function() {
    Fluid.plugins.fancyBox();
  });
</script>


  <script>Fluid.plugins.imageCaption();</script>

  <script  src="/js/local-search.js" ></script>




  
<script src="/js/love.js"></script>
<script src="/js/funnyTitle.js"></script>
<script src="/js/backTop.js"></script>
<script src="//cdn.jsdelivr.net/gh/bynotes/texiao/source/js/xiaoxuehua.js"></script>



<!-- 主题的启动项，将它保持在最底部 -->
<!-- the boot of the theme, keep it at the bottom -->
<script  src="/js/boot.js" ></script>


  

  <noscript>
    <div class="noscript-warning">博客在允许 JavaScript 运行的环境下浏览效果更佳</div>
  </noscript>
<script src="/live2dw/lib/L2Dwidget.min.js?094cbace49a39548bed64abff5988b05"></script><script>L2Dwidget.init({"pluginRootPath":"live2dw/","pluginJsPath":"lib/","pluginModelPath":"assets/","tagMode":false,"debug":false,"model":{"jsonPath":"/live2dw/assets/wanko.model.json"},"display":{"position":"left","width":150,"height":150,"hOffset":20,"vOffset":0},"mobile":{"show":false,"scale":0.5},"react":{"opacity":0.9},"log":false});</script></body>
</html>
